package com.atguigu.gmall.payment.service;

import com.atguigu.gmall.enums.model.PaymentType;
import com.atguigu.gmall.payment.model.PaymentInfo;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.Map;

public interface PaymentInfoService extends IService<PaymentInfo> {


    /**
     * 保存本地交易记录
     * @param paymentInfo
     * @param paymentType
     */
    void savePaymentInfo(PaymentInfo paymentInfo, String paymentType);


    /**
     * 根据订单编号+付款方式查询本地交易记录
     * @param outTradeNo
     * @param payType
     * @return
     */
    PaymentInfo getPaymentInfo(String outTradeNo, String payType);

    /**
     * 根据订单ID+付款方式查询本地交易记录
     * @param orerId
     * @param payType
     * @return
     */
    PaymentInfo getPaymentInfo(Long orerId, String payType);


    /**
     * 更新本地交易记录表
     * @param paymentInfo
     * @param paramsMap
     */
    void paySuccess(PaymentInfo paymentInfo, Map<String, String> paramsMap);
}
